package com.yhh.college_information_platform.service;

import com.yhh.college_information_platform.common.PageResult;
import com.yhh.college_information_platform.vo.ResourceVO;

/**
 * 点赞Service接口
 *
 * @author yhh
 * @date 2025-10-25
 */
public interface LikeService {

    /**
     * 点赞资料
     *
     * @param userId 用户ID
     * @param resourceId 资料ID
     */
    void addLike(Long userId, Long resourceId);

    /**
     * 取消点赞
     *
     * @param userId 用户ID
     * @param resourceId 资料ID
     */
    void removeLike(Long userId, Long resourceId);

    /**
     * 判断用户是否点赞了某资料
     *
     * @param userId 用户ID
     * @param resourceId 资料ID
     * @return 是否点赞
     */
    Boolean isLiked(Long userId, Long resourceId);

    /**
     * 获取用户的点赞列表
     *
     * @param userId 用户ID
     * @param current 当前页
     * @param size 每页大小
     * @return 分页结果
     */
    PageResult<ResourceVO> getUserLikes(Long userId, Integer current, Integer size);
}

